/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.DataPegawai;

import com.entities.Pegawai;
import com.toedter.calendar.JDateChooser;
import java.sql.SQLException;
import java.text.SimpleDateFormat;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.ButtonGroup;
import javax.swing.ButtonModel;
import javax.swing.JComboBox;
import javax.swing.JRadioButton;
import javax.swing.JTextArea;
import javax.swing.JTextField;

/**
 *
 * @author Ignacio
 */
public class tambahPegawaiControl {
    private static javax.swing.JDialog dialog;
   public static void simpanPegawai(Pegawai peg) throws SQLException, ClassNotFoundException{
       Pegawai.getKoneksiKontrol().simpanPegawai(peg);
   }
   public static int simpanPegawaiAction(JTextField nip, JTextField nama, JTextField tempat, JRadioButton laki,JRadioButton perempuan, JTextArea alamat,
                                        JDateChooser lahir, JDateChooser kerja,JComboBox pdidik, JComboBox tipe, JComboBox tingkat,
                                        JComboBox kelas, JTextField jabat,JTextField mkgText) throws ClassNotFoundException, SQLException {
       int status = 0; 
       try {
            SimpleDateFormat sDF = new SimpleDateFormat("yyyy-MM-dd");
            String nipPegawai = nip.getText();
            String namaPegawai = nama.getText();
            String tempatLahir = tempat.getText();
            String jenisKelamin;
            if(laki.isSelected()==true)
                jenisKelamin="laki-laki"; 
            else 
                jenisKelamin= "perempuan";
            String alamatPegawai = alamat.getText();
            String tanggalLahir = sDF.format(lahir.getDate());
            String tanggalKerja = sDF.format(kerja.getDate());
            String pdidikanPegawai = pdidik.getSelectedItem().toString();
            String tipePegawai = tipe.getSelectedItem().toString();
            String gol ;
            if(tipePegawai.equals("Honorer"))
                gol = "honorer";
            else
                gol = tingkat.getSelectedItem().toString().concat(kelas.getSelectedItem().toString());
            String jabatanPegawai = jabat.getText();
            int mkg = 0;
            if(!mkgText.equals("")){
            mkg=Integer.parseInt(mkgText.getText());
            }
            
            Pegawai pegawai = new Pegawai();
            pegawai.setNIP(nipPegawai);
            pegawai.setNama(namaPegawai);
            pegawai.setTempatLahir(tempatLahir);
            pegawai.setJenisKelamin(jenisKelamin);
            pegawai.setAlamat(alamatPegawai);
            pegawai.setTanggalLahir(tanggalLahir);
            pegawai.setTanggalKerja(tanggalKerja);
            pegawai.setPendidikan(pdidikanPegawai);
            pegawai.setTipePegawai(tipePegawai);
            pegawai.setGolongan(gol);
            pegawai.setJabatan(jabatanPegawai);
            pegawai.setMKG(mkg);
            tambahPegawaiControl.simpanPegawai(pegawai);
            status = 1;
        } catch (SQLException ex) {
            Logger.getLogger(tambahPegawaiControl.class.getName()).log(Level.SEVERE, null, ex);
            status = 0;
        }catch (ClassNotFoundException ex) {
            Logger.getLogger(tambahPegawaiControl.class.getName()).log(Level.SEVERE, null, ex);
            status = 0;
        }
       return status;
   }
   
    public static int updatePegawaiAction(JTextField nip, JTextField nama, JTextField tempat, JRadioButton laki,JRadioButton perempuan, JTextArea alamat,
                                        JDateChooser lahir, JDateChooser kerja,JComboBox pdidik, JComboBox tipe, JComboBox tingkat,
                                        JComboBox kelas, JTextField jabat,JTextField mkgText) throws SQLException, ClassNotFoundException{
        int status = 0; 
       try {
            SimpleDateFormat sDF = new SimpleDateFormat("yyyy-MM-dd");
            String nipPegawai = nip.getText();
            String namaPegawai = nama.getText();
            String tempatLahir = tempat.getText();
            String jenisKelamin;
            if(laki.isSelected()==true)
                jenisKelamin="laki-laki"; 
            else 
                jenisKelamin= "perempuan";
            String alamatPegawai = alamat.getText();
            String tanggalLahir = sDF.format(lahir.getDate());
            String tanggalKerja = sDF.format(kerja.getDate());
            String pdidikanPegawai = pdidik.getSelectedItem().toString();
            String tipePegawai = tipe.getSelectedItem().toString();
            String gol ;
            if(tipePegawai.equals("Honorer"))
                gol = "honorer";
            else
                gol = tingkat.getSelectedItem().toString().concat(kelas.getSelectedItem().toString());
            String jabatanPegawai = jabat.getText();
            int mkg = 0;
            if(!mkgText.equals("")){
            mkg=Integer.parseInt(mkgText.getText());
            }
            
            Pegawai pegawai = new Pegawai();
            pegawai.setNIP(nipPegawai);
            pegawai.setNama(namaPegawai);
            pegawai.setTempatLahir(tempatLahir);
            pegawai.setJenisKelamin(jenisKelamin);
            pegawai.setAlamat(alamatPegawai);
            pegawai.setTanggalLahir(tanggalLahir);
            pegawai.setTanggalKerja(tanggalKerja);
            pegawai.setPendidikan(pdidikanPegawai);
            pegawai.setTipePegawai(tipePegawai);
            pegawai.setGolongan(gol);
            pegawai.setJabatan(jabatanPegawai);
            pegawai.setMKG(mkg);
            tambahPegawaiControl.updatePegawai(pegawai);
            status = 1;
        } catch (SQLException ex) {
            Logger.getLogger(tambahPegawaiControl.class.getName()).log(Level.SEVERE, null, ex);
            status = 0;
        }catch (ClassNotFoundException ex) {
            Logger.getLogger(tambahPegawaiControl.class.getName()).log(Level.SEVERE, null, ex);
            status = 0;
        }
       return status;
        
    }
    
    public static void updatePegawai (Pegawai pegawai) throws ClassNotFoundException, SQLException{
        Pegawai.getKoneksiKontrol().updatePegawai(pegawai);
    }
    
   public static javax.swing.JDialog getFrame() {
        return dialog;
    }
    
    public static void setForm (tambahPegawaiForm form){
        tambahPegawaiControl.dialog = form;
    }
    
}
